
/**
 * This file is part of Nokia OMAF implementation
 *
 * Copyright (c) 2018-2019 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
 *
 * Contact: omaf@nokia.com
 *
 * This software, including documentation, is protected by copyright controlled by Nokia Corporation and/ or its
 * subsidiaries. All rights are reserved.
 *
 * Copying, including reproducing, storing, adapting or translating, any or all of this material requires the prior
 * written consent of Nokia.
 */
#pragma once

#include <android/native_activity.h>
#include <android/asset_manager.h>
#include <android/asset_manager_jni.h>

#include <OMAFPlayerPlatformParameters.h>

#include "Foundation/NVRPathName.h"
#include "Platform/OMAFDataTypes.h"

OMAF_NS_BEGIN
    namespace Android
    {
        void_t initialize(OMAF::PlatformParameters* platformParameters);

        jobject getActivity();
        ANativeActivity* getNativeActivity();

        JavaVM* getJavaVM();

        void_t attachThread();
        JNIEnv* getJNIEnv();
        void_t detachThread();

        AAssetManager* getAssetManager();
        const PathName getExternalStoragePath();
        const PathName getInternalStoragePath();
    }
OMAF_NS_END
